package com.eonmind.ai.service;

import com.eonmind.ai.core.draw.platform.mdJounery.model.MdTaskQueryResponse;
import com.eonmind.ai.dto.AiDrawDto;
import com.eonmind.common.contract.data.response.PageResponse;
import com.eonmind.user.contract.dto.UserInfoData;

public interface IAiDrawService {
    MdTaskQueryResponse submitMjTask(UserInfoData userInfoData, AiDrawDto.AiDrawMjTaskRequest aiDrawTaskRequest);

    AiDrawDto.MjDrawTaskQueryResponse queryMjTask(UserInfoData userInfoData, AiDrawDto.AiDrawTaskQueryRequest aiDrawTaskQueryRequest);

    PageResponse<AiDrawDto.MjDrawTaskQueryResponse> pageMjDraw(UserInfoData userInfoData, AiDrawDto.AiDrawPageRequest aiDrawPageRequest);

    void delDrawTask(UserInfoData userInfoData, AiDrawDto.DrawTaskDelRequest drawTaskDelRequest);

    MdTaskQueryResponse executeMjCommandTask(UserInfoData userInfoData, AiDrawDto.AiDrawMjCommandRequest aiDrawMjCommandRequest);

    void syncMjTaskProgress(UserInfoData userInfoData, AiDrawDto.AiDrawMjTaskSyncRequest taskSyncRequest);
}
